<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  
  <title>Linux Utilities | Onyway Hexo</title>

  <!-- keywords -->
  

  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta name="description" content="命令名称 [命名参数] [命令对象] 一、日常操作 1.cd指令       - 进入指定文件夹 cd  目录     - 进入指定目录(也可以是文件夹对应的路径) ​               ~相对路径 — 绝对路径 cd  ..       - 返回上层目录 cd  ~    - 回到根目录 cd  &#x2F;    - 进入系统根目录 \2. ls指令        - 查看当前目录中的内容 l">
<meta property="og:type" content="article">
<meta property="og:title" content="Linux Utilities">
<meta property="og:url" content="http:&#x2F;&#x2F;yoursite.com&#x2F;2018&#x2F;01&#x2F;14&#x2F;linux-used-command&#x2F;index.html">
<meta property="og:site_name" content="Onyway Hexo">
<meta property="og:description" content="命令名称 [命名参数] [命令对象] 一、日常操作 1.cd指令       - 进入指定文件夹 cd  目录     - 进入指定目录(也可以是文件夹对应的路径) ​               ~相对路径 — 绝对路径 cd  ..       - 返回上层目录 cd  ~    - 回到根目录 cd  &#x2F;    - 进入系统根目录 \2. ls指令        - 查看当前目录中的内容 l">
<meta property="og:locale" content="en">
<meta property="og:updated_time" content="2019-11-12T12:44:33.158Z">
<meta name="twitter:card" content="summary">
  
    <link rel="alternative" href="/atom.xml" title="Onyway Hexo" type="application/atom+xml">
  
  
  <link rel="stylesheet" href="/css/style.css">
  
  

  <script src="//cdn.bootcss.com/require.js/2.3.2/require.min.js"></script>
  <script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
  
</head>
  <script src="https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js"></script>
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/font-awesome/css/font-awesome.min.css"/>
  <script src="https://simple-gogogo.github.io/live2d-widget/autoload.js"></script>
<body>
  <div id="container">
    <div id="particles-js"></div>
    <div class="left-col">
    <div class="overlay"></div>
<div class="intrude-less">
	<header id="header" class="inner">
		<a href="/" class="profilepic">
			
			<img lazy-src="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1338858121,4093355806&amp;fm=26&amp;gp=0.jpg" class="js-avatar">
			
		</a>

		<hgroup>
		  <h1 class="header-author"><a href="/">Oneway</a></h1>
		</hgroup>

		

		
			<div class="switch-btn">
				<div class="icon">
					<div class="icon-ctn">
						<div class="icon-wrap icon-house" data-idx="0">
							<div class="birdhouse"></div>
							<div class="birdhouse_holes"></div>
						</div>
						<div class="icon-wrap icon-ribbon hide" data-idx="1">
							<div class="ribbon"></div>
						</div>
						
						<div class="icon-wrap icon-link hide" data-idx="2">
							<div class="loopback_l"></div>
							<div class="loopback_r"></div>
						</div>
						
						
					</div>
					
				</div>
				<div class="tips-box hide">
					<div class="tips-arrow"></div>
					<ul class="tips-inner">
						<li>菜单</li>
						<li>标签</li>
						
						<li>友情链接</li>
						
						
					</ul>
				</div>
			</div>
		

		<div class="switch-area">
			<div class="switch-wrap">
				<section class="switch-part switch-part1">
					<nav class="header-menu">
						<ul>
						
							<li><a href="/">主页</a></li>
				        
							<li><a href="/archives">所有文章</a></li>
				        
						</ul>
					</nav>
					<nav class="header-nav">
						<div class="social">
							
						</div>
					</nav>
				</section>
				
				
				<section class="switch-part switch-part2">
					<div class="widget tagcloud" id="js-tagcloud">
						
					</div>
				</section>
				
				
				
				<section class="switch-part switch-part3">
					<div id="js-friends">
					
			          <a target="_blank" class="main-nav-link switch-friends-link" href="https://github.com/smackgg/hexo-theme-smackdown">smackdown</a>
			        
			        </div>
				</section>
				

				
			</div>
		</div>
	</header>				
</div>
    </div>
    <div class="mid-col">
      <nav id="mobile-nav">
  	<div class="overlay">
  		<div class="slider-trigger"></div>
  		<h1 class="header-author js-mobile-header hide">Oneway</h1>
  	</div>
	<div class="intrude-less">
		<header id="header" class="inner">
			<div class="profilepic">
				<img lazy-src="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1338858121,4093355806&amp;fm=26&amp;gp=0.jpg" class="js-avatar">
			</div>
			<hgroup>
			  <h1 class="header-author">Oneway</h1>
			</hgroup>
			
			<nav class="header-menu">
				<ul>
				
					<li><a href="/">主页</a></li>
		        
					<li><a href="/archives">所有文章</a></li>
		        
		        <div class="clearfix"></div>
				</ul>
			</nav>
			<nav class="header-nav">
				<div class="social">
					
				</div>
			</nav>
		</header>				
	</div>
</nav>
      <div class="body-wrap"><article id="post-linux-used-command" class="article article-type-post" itemscope itemprop="blogPost">
  
    <div class="article-meta">
      <a href="/2018/01/14/linux-used-command/" class="article-date">
  	<time datetime="2018-01-14T03:01:30.000Z" itemprop="datePublished">2018-01-14</time>
</a>
    </div>
  
  <div class="article-inner">
    
      <input type="hidden" class="isFancy" />
    
    
      <header class="article-header">
        
  
    <h1 class="article-title" itemprop="name">
      Linux Utilities
      
    </h1>
  

      </header>
      
      <div class="article-info article-info-post">
        
        

        
        <div class="clearfix"></div>
      </div>
      
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>命令名称 [命名参数] [命令对象]</p>
<p>一、日常操作</p>
<p>1.cd指令       - 进入指定文件夹</p>
<p>cd  目录     - 进入指定目录(也可以是文件夹对应的路径)</p>
<p>​               ~相对路径 — 绝对路径</p>
<p>cd  ..       - 返回上层目录</p>
<p>cd  ~    - 回到根目录</p>
<p>cd  /    - 进入系统根目录</p>
<p>\2. ls指令        - 查看当前目录中的内容</p>
<p>ls</p>
<p>ls  -l/-lh              -  查看详情</p>
<p>ls -a               - 隐藏文件也一起显示</p>
<p>ls -R            - 递归显示所有内容</p>
<p>ls -S/-t            - 按大小/时间排序</p>
<p>注意: 多个功能不冲突的参数可以同时使用，中间用空格隔开, 例如 -  (ls -lh -S)</p>
<p>3.pwd指令         - 显示当前完整目录</p>
<p>pwd</p>
<p>4.文件操作指令</p>
<p>touch  文件名        - 新建文件</p>
<p>cat 文件名           - 查看文件内容</p>
<p>vim/vi  文件名          -打开文件</p>
<p>rm    文件名        - 删除文件(询问是否删除)</p>
<p>rm -f  文件名  - 强制删除文件(不询问)</p>
<p>rm - r 目录        - 删除文件夹</p>
<p>rm -rf   目录、 rm -r  -f 目录       -  删除文件夹(不询问)</p>
<p>cp  文件名1  文件名2    - 将文件1中的内容拷贝到文件2中</p>
<p>cp  文件  目录    -  将指定文件拷贝到指定目录中</p>
<p>cp -r  文件名/目录名   目录2    - 将文件/目录拷贝到目录2中</p>
<p>mv    文件名1  文件名2    - 将文件1中的内容移动到文件2中 ,并且删除文件1（文件重命名）</p>
<p>mv  文件1路径   文件2路径</p>
<p>mv 文件名1  新文件名    -   重命名</p>
<p>mv    文件名1  文件目录    - 将文件1移动到指定目录中  </p>
<p>注意: mv指令不能加-r来操作目录</p>
<p>(注意：cp/mv/rm 后面可以跟： -i询问  -f强制  -n不覆盖)</p>
<p>mkdir  目录名        - 新建文件夹</p>
<p>mkdir -p a/b/c        - 按层级创建a,b,c三个文件夹</p>
<p>mkdir -p a/{b,c}/{d,e,f}    -同一层级常见多个</p>
<p>rmdir  目录名        - 删除指定空目录</p>
<p>7.history        - 显示历史指令记录</p>
<p>bashrc 配置显示时间：export  HISTTIMEFORMAT=”[%y‐%m‐%d_%T] “ </p>
<p>修改bashrc 后使其生效:  source ~/.bashrc  或 .  .bashrc   </p>
<p>6.链接</p>
<p>ln -s 源路径  目标路径        - 给源路径对应的文件在目标路径下创建一个软链接(可以看成是快捷键)(源路径是绝对路径) (掌握！)</p>
<p>ln 源路径  目标路径            - 给源路径对应的文件在目标路径下创建一个硬链接(看成一个数据的多个引用)（了解）</p>
<p>注意: 源文件不存在的时候，软件无效，硬链接变成普通文件</p>
<p>8.快捷键</p>
<p>ctr + f         - 前进一个字符</p>
<p>ctr + b        - 后退一个字符</p>
<p>ctr + a        - 回到行首</p>
<p>ctr + e         - 回到行尾</p>
<p>ctr + w        - 向左删除一个单词</p>
<p>ctr + u        - 向左删除全部</p>
<p>ctr + k        - 向右删除全部</p>
<p>ctr + y        - 粘贴上次删除的内容</p>
<p>ctr + l        - 清屏  </p>
<p>二、进程相关指令(用得较少)</p>
<p>1.ps指令</p>
<p>ps                        - 进程状态</p>
<p>ps -aux  或者  ps ex            - 查看进程</p>
<p>ps -aux|grep 进程名        - 查看指定进程</p>
<p>ps grep  进程ID</p>
<p><a href="http://2.top" target="_blank" rel="noopener">2.top</a>指令</p>
<p>top                         - 动态监控进程</p>
<p>top  -p PID1,PID2,….        - 动态监控指定进程</p>
<p>3.free指令</p>
<p>free -单位                    - 以指定单位查看内存, 例如 free -m (以Mb为单位显示内存状况), -g,  -k等！</p>
<p>4.kill指令</p>
<p>kill 进程号                    - 杀死指定的进程</p>
<p>kill -1/-9/-15 进程号        - -1(HUP)不间断重启，-9(KILL)强制杀死进程, -15(TERM)正常终止进程  </p>
<p>pkill  进程名                - 按名字处理进程</p>
<p>killall 进程名                - 处理名字匹配的进程</p>
<p>5.uptime                    - 查看系统状态</p>
<p>三、权限管理</p>
<p>1.user和group : 一个系统可以有多个用户和多个分组； 一个分组中可以有多个用户，一个用户在不同的分组中(多对多)</p>
<p>users                                     - 查看当前用户</p>
<p>groups                                 - 查看当前分组</p>
<p>groupadd  分组名                            - 添加分组   (能在/etc/group文件中查看到新的分组, root才有的权限)</p>
<p>useradd  用户名                                - 创建新的用户(还是在home中自动创建这个用户对应的文件夹， root才有的权限)</p>
<p>useradd ‐G 分组列表 ‐m ‐s /bin/bash 用户名        - 创建一个用户添加到指定的分组中(在home创建相应的文件夹)</p>
<p>usermod -G 分组列表 用户名                    - 修改分组(root才有的权限)</p>
<p>passwd 用户名                            - 修改密码（root才有权限）</p>
<p>passwd                                            - 修改当前账号密码</p>
<p>su  用户名                                - 切换用户身份(root不需要密码，其他用户需要密码)</p>
<p>sudo                                        - 以管理员执行其他程序</p>
<p>注意： a.在ubuntu需要将用户添加到sudo分组中，才能使用sudo以管理员的身份执行程序</p>
<p>​          b.在centOS中需要先执行vi 指令进入/etc/sudoers文件中在指定的位置添加内容</p>
<p>​        ## Allow root to run any commands anywhere</p>
<p>​        root    ALL=(ALL)       ALL</p>
<p>​        xiaoming ALL=(ALL)      ALL        (自己添加的，xiaoming是用户名)</p>
<p>2.chmod(记住！) </p>
<p>chmod       权限值   文件            - 修改指定文件的权限</p>
<p>chmod    [a,u,g,o][+,-][r,w,x]  文件            - 为指定文件，给所有用户添加相应的权限</p>
<p>​                                              (a:所有，u:自己，g:同组，o:其他；</p>
<p>​                                            +：添加， -: 取消；</p>
<p>​                                            r:读，w:写，x:执行)</p>
<p>chown  用户名     文件            - 改变文件所有者</p>
<p>(权限制是三组二进制值)</p>
<p>self      group    other</p>
<p>rwx      rwx        rwx</p>
<p>111       101        001            - 自己读写可执行，同一分组的只读可执行，其他的只可执行</p>
<p>110      100        000</p>
<p>chmod  644  文件</p>
<p>chmod  777   文件</p>
<p>chmod 666    文件</p>
<p>三、日志管理</p>
<p>1.cat指令</p>
<p>cat       文件                - 查看文件内容</p>
<p>2.查看部分</p>
<p>head -n  N  文件        - 查看前N行内容</p>
<p>tail  -n  N    文件         - 查看后N行内容</p>
<p>3.</p>
<p>less  文件</p>
<p>​    - 按 j 向下</p>
<p>​    - 按 k 向上</p>
<p>​    - 按 f 向下翻屏</p>
<p>​    - 按    b 向上翻屏</p>
<p>​    - 按 g 到全文开头</p>
<p>​    - 按 G 到全文结尾</p>
<p>​    - 按 Q 退出  </p>
<p>more [-N]  文件            - 和less差不多，这个是尽可能多，less是尽可能少的加载</p>
<p>4.处理(对通过其他指令获取的结果进行处理)</p>
<p>sort                  - 排序  (cat 文件 |sort)</p>
<p>uniq                - 去重  (cat 文件 |uniq) - 只会去重相邻的重复是数据，一般结合sort一起使用:  |sort|uniq</p>
<p>awk ‘{print $N}’    - 打印第N列的内容(netstat -natp|awk ‘{print $4}’)</p>
<p>awk ‘{print $N1,$N2,$N3,…}’</p>
<p>history |awk ‘{print $4}’ |sort |uniq ‐c | sort ‐rnk 1 | head ‐n 3           -获取历史指令中，使用最频繁的三个指令</p>
<p>uniq ‐c       -去重的时候统计每一行内容的重复出现的次数</p>
<p>sort -nk 1    - 数值大小从小到大排序</p>
<p>sort -nk 2   - 字符大小从小到大排序(默认)</p>
<p>sort -rnk 1    - 数值大小从大到小排序</p>
<p>sort -rnk 2   - 字符大小从大到小排序(默认)</p>
<p>5.重定向</p>
<p>执行获取数据的指令  &gt; 文件  （将执行指定的结果存储到文件中 - 覆盖原文件中内容）</p>
<p>执行获取数据的指令 &gt;&gt; 文件   (将执行指定的结果存储到文件中 - 在原文件的最后追加)</p>
<p>5.统计  </p>
<p>wc -c(字符)/-w(单词)/-l(行)  文件</p>
<p>6.查找</p>
<p>grep  查看对象    目录/文件  参数</p>
<p>​    </p>
<p>​    参数：</p>
<p>​        -i    忽略大小写:         grep you bb.txt   -i</p>
<p>​        -n   显示行标号：      grep you bb.txt -n   /   grep you bb.txt -i -n</p>
<p>​        -E   通过正则表达式匹配:     grep -E  ‘正则表达式’  文件</p>
<p>​        注意： Linux中，正则不支持: \d, \s,\w,\b,\D,\S,\W,\B</p>
<p>​                                           支持：.   +, *, ?, {N,M}, [], ^, $</p>
<p>​        -v   忽略字段:   grep you bb.txt -v  (在bb.txt中找不包含you的所有行)</p>
<p>​                        grep -E  ‘[0-9]+.[0-9]+’  abb.txt  -v</p>
<p>​        -rn  递归查找目录，并打印行号</p>
<p>​        grep -r  you ./   (在当前文件夹下中所有文件中去找包行’you’的行)</p>
<p>​                        </p>
<p>​        // 对文件格式进行约束</p>
<p>​        —include=‘<em>.py’    仅包含 py文件: grep -r you ./ –include=‘</em>.txt’</p>
<p>​        —exclude=‘<em>.js’    不包含 js 文件: grep -r you ./ –exclude=’</em>.c’</p>
<p>​    例如：</p>
<p>​        grep you bb.txt  </p>
<p>​        grep you bb.txt -i</p>
<p>​        grep you bb.txt -i -n</p>
<p>​        grep -E ‘[0-9]+’ bb.txt </p>
<p>//  在文件夹下找满足条件的文件</p>
<p>find       DIR    -name  ‘<em>.xxx’        找到目录下所有名字匹配的文件:  find a1 -name ‘</em>.txt’(在文件夹a1中找所有txt文件)</p>
<p>find 路径  -size  +/-文件大小      例如: find ./  +20k  (在当前目录下找文件大小大于20k的文件)</p>
<p>​    例：find ./ -size +20k -size -100k -name ‘*.txt’   (找当前目录下大于20k并且小于100k的所有txt文件)</p>
<p>// 查指令</p>
<p>which  指令        - 精确查找当前可执行的指令</p>
<p>whereis  指令    - 查找所有匹配的命令</p>
<p>man 指令   -使用指令手册</p>
<p>四、网络管理</p>
<p>ifconfig     查看网卡状态</p>
<p>netstat   -natp                    - 查看网络连接状态</p>
<p>netstat   -natp|grep  端口号            - 查看指定端口的网络连接状态    </p>
<p>*ping  地址 </p>
<p>ping  -i   时间    地址</p>
<p>ping  -c  次数    地址</p>
<p>telnet  ip地址    端口         - 查看远程主机网络连接状况（需要telnet环境）</p>
<p>dig 地址            - 查看DNS   (需要环境支持)</p>
<p>** wget  地址            - 下载  </p>
<p>五、使用包管理工具(掌握)</p>
<p>包管理工具：yum </p>
<ul>
<li>yum search：搜索软件包，例如yum search nginx。</li>
<li>yum list installed：列出已经安装的软件包，例如yum list installed | grep zlib。</li>
<li>yum install：安装软件包，例如yum install nginx。</li>
<li>yum remove：删除软件包，例如yum remove nginx。</li>
<li>yum update：更新软件包，例如yum update可以更新所有软件包，而yum update tar只会更新tar。</li>
<li>yum check-update：检查有哪些可以更新的软件包。</li>
<li>yum info ：显示软件包的相关信息，例如yum info nginx。</li>
</ul>
<p>源代码构建安装</p>
<ol>
<li>wget  安装包的路径        -下载安装包</li>
<li>gunzip/tar  压缩包         - 解压、解归档</li>
<li>(设置安装路径)</li>
<li>cd 安装包目录 执行: make &amp;&amp; make install       -编译安装包程序</li>
<li>给可执行文件添加软连接到usr/bin目录下            -添加快捷方式</li>
</ol>
<p>压缩/解压缩和归档/解归档 - <strong>gzip</strong> / <strong>gunzip</strong> / <strong>xz</strong> / <strong>tar</strong></p>
<p>发送远程文件 - scp指令：</p>
<p>scp 文件   root@IP地址:服务器上保存被发送文件的路径</p>

      
    </div>
    
  </div>
  
    
<nav id="article-nav">
  
    <a href="/2019/11/12/linux-markdown/" id="article-nav-newer" class="article-nav-link-wrap">
      <strong class="article-nav-caption">&lt;</strong>
      <div class="article-nav-title">
        
          Markdown for Linux
        
      </div>
    </a>
  
  
</nav>

  
</article>


<div class="ds-share share" data-thread-key="linux-used-command" data-title="Linux Utilities" data-url="http://yoursite.com/2018/01/14/linux-used-command/"  data-images="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1338858121,4093355806&amp;fm=26&amp;gp=0.jpg" data-content="Linux Utilities">
    <div class="ds-share-inline">
      <ul  class="ds-share-icons-16">
      	<li data-toggle="ds-share-icons-more"><a class="ds-more" href="javascript:void(0);">分享到：</a></li>
        <li><a class="ds-weibo" href="javascript:void(0);" data-service="weibo">微博</a></li>
        <li><a class="ds-qzone" href="javascript:void(0);" data-service="qzone">QQ空间</a></li>
        <li><a class="ds-qqt" href="javascript:void(0);" data-service="qqt">腾讯微博</a></li>
        <li><a class="ds-wechat" href="javascript:void(0);" data-service="wechat">微信</a></li>
      </ul>
      <div class="ds-share-icons-more">
      </div>
    </div>
 </div>
 





</div>
      <footer id="footer">
  <div class="outer">
    <div id="footer-info">
      <div class="footer-left">
        &copy; 2019 Oneway
      </div>
        <div class="footer-right">
          <a href="http://hexo.io/" target="_blank">Hexo</a>  Theme <a href="https://github.com/smackgg/hexo-theme-smackdown" target="_blank">Smackdown</a>
        </div>
    </div>
  </div>
</footer>
    </div>
    
  <link rel="stylesheet" href="/fancybox/jquery.fancybox.css">


<script>
	var yiliaConfig = {
		fancybox: true,
		mathjax: true,
		animate: true,
		isHome: false,
		isPost: true,
		isArchive: false,
		isTag: false,
		isCategory: false,
		open_in_new: false
	}
</script>
<script src="/js/main.js"></script>



<script type="text/x-mathjax-config">
MathJax.Hub.Config({
    tex2jax: {
        inlineMath: [ ['$','$'], ["\\(","\\)"]  ],
        processEscapes: true,
        skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']
    }
});

MathJax.Hub.Queue(function() {
    var all = MathJax.Hub.getAllJax(), i;
    for(i=0; i < all.length; i += 1) {
        all[i].SourceElement().parentNode.className += ' has-jax';                 
    }       
});
</script>

<script src="//cdn.bootcss.com/mathjax/2.7.0/MathJax.js"></script>


  </div>
<script src="/live2dw/lib/L2Dwidget.min.js?094cbace49a39548bed64abff5988b05"></script><script>L2Dwidget.init({"pluginRootPath":"live2dw/","pluginModelPath":"assets/","model":{"jsonPath":"live2d-widget-model-hijiki"},"log":false,"pluginJsPath":"lib/","tagMode":false});</script></body>
</html>
